package com.swak.fx.support;

import java.time.LocalDateTime;

import com.swak.Constants;
import com.swak.utils.StringUtils;
import com.swak.utils.time.DateTimes;

/**
 * 实体属性
 * 
 * @author 618lf
 */
public interface Property {

	default String Long2String(Long value) {
		return value == null ? StringUtils.EMPTY : value.toString();
	}

	default Long String2Long(String value) {
		return StringUtils.isBlank(value) ? null : Long.parseLong(value);
	}

	default String LocalDateTime2String(LocalDateTime value, String format) {
		return value == null ? StringUtils.EMPTY : DateTimes.getFormatTime(value, format);
	}

	default String LocalDateTime2String(LocalDateTime value) {
		return value == null ? StringUtils.EMPTY : DateTimes.getFormatTime(value, Constants.Second_Format);
	}

	default LocalDateTime String2LocalDateTime(String value, String format) {
		return StringUtils.isBlank(value) ? null : DateTimes.parseDateTime(value, format);
	}

	default LocalDateTime String2LocalDateTime(String value) {
		return StringUtils.isBlank(value) ? null : DateTimes.parseDateTime(value, Constants.Second_Format);
	}
}
